import {Dimensions, Image} from "react-native";

/**
 * @Author Training
 * @desc 获取屏幕宽度和高度
 * */
export const SCREEN_WIDTH = Dimensions.get("window").width,
    SCREEN_HEIGHT = Dimensions.get("window").height;

/**
 * @Author Training
 * @Desc 获取图片宽高的比例
 * @Params src:图片地址  如果是静态地址的话  需要使用require引入
 * @Params type:图片类型 0 本地地址  1 网络地址  默认0
 * @Return {ratio:number}
 */
 export function getImageRatio(src:any,type:number = 0):number{
     let info = {width:0,height:0};
     if (type === 0)
         info = Image.resolveAssetSource(src);
     else
         Image.getSize(src,function(width,height){
             info = {
                 width,
                 height
             };
         },function(err){
             new Error("[图片获取错误]:"+err);
         });
     return info.width / info.height;
}
/**
 * @Author Training
 * @Desc 获取相对于屏幕宽度的相对数据
 *       可以获取百分比数据  或者计算固定数值
 *       默认计算固定数值
 *       名字解析:
 *         get :  获取
 *         relative : 相对
 *         value: 数据
 * @Params value : 原始数据
 * @Params type : 0 (计算固定数据,默认) , type: 1 (计算百分比)
 */

export  function getRelativeValue(value:number,type:number = 0):any{

    if(type === 0){
        return value / 412 * SCREEN_WIDTH;
    }else if(type === 1){
        let ratio = value / 412;
        return ratio * 100 + "%";
    }else {
        throw "Type error , the type only either 0 or 1";
    }
}
